Skip to main content

N사 인턴


경력: 채용연계형 인턴
채용 프로세스: 서류 전형 → 코딩테스트 → 1차 기술면접 → 인턴십
면접 시간: 1시간
면접 인원: 1:3 (지원자:면접관)


JavaScript

  • 클로저란 무엇이며 예시를 들어주세요
  • 자바스크립트의 가비지 컬렉션이 왜 클로저 내부 지역변수를 참조하지 않나요?
  • Null 과 undefined 의 차이에 대해 알려주세요
  • Lazy Loading이란 무엇이며 어떻게 구현하나요?
  • DOM을 조작 해보신 적 있나요? 있다면 DOM 조작에 대해 어떻게 생각하시는지

Web

  • 렌더링 리소스를 줄여서 렌더링 최적화하는 방법을 설명해보세요
  • 리액트 최적화 방식을 제외하고 렌더링 최적화를 진행하는 방법은 어떤 것이 있나요?
  • 라이브러리와 프레임워크의 차이점을 알려주세요
  • Next.js는 라이브러리인가요 프레임워크인가요?
  • 웹 소켓과 REST API를 클라이언트에서 연결 할 때 차이점은 무엇인가요?

React

  • 리액트의 최적화 방식과 각각 방식에 대해서 설명해주세요
  • Props 와 state의 차이는 무엇인가요?
  • 리액트의 렌더링 조건을 알려주세요
  • 리액트의 상태관리 방법 중 어떤 것을 사용해봤나요?
  • Class 컴포넌트와 Function 컴포넌트의 차이점은 무엇인가요?
  • useEffect에 대해 설명해주세요
  • useEffect에 빈 배열을 넣으면 왜 마운트,언마운트 될 때만 실행 되나요?
  • useEffect optional 배열을 넣지 않으면 어떤 일이 발생하나요?
  • Virtual DOM이란 무엇이며 왜 사용하나요?
  • 리액트를 사용하는 장점에 대해 알려주세요

Redux

  • Redux의 규칙에 대해 알려주세요
  • Redux와 Apollo Client의 차이에 대해 알려주세요
  • Redux는 어떻게 상태 변화의 기록이 남나요?

Apollo Client

  • Apollo Client에서 Redux처럼 상태 변화의 기록을 남기기 위해 어떻게 해야하나요?
  • Apollo Client에서 상태관리는 어떻게 하나요?
  • Apollo Client가 Redux를 대체 할 수 있다고 생각하시나요?

TypeScript

  • TypeScript 인터페이스와 타입의 차이는 무엇인가요
  • TypeScript에서 타입이나 인터페이스에 새로운 프로퍼티를 추가하기 위해선 어떻게 해야하나요

개인 프로젝트 질문

  • Web Audio API를 통해 구현한 녹음기능에 대해 설명해주세요
  • Infinite Scroll 을 어떤 방식으로 구현했나요?
  • Firebase를 왜 사용했고 어떤 기능을 사용 하셨나요?
  • Firebase의 realtime database는 어떤 통신 방식을 사용하나요?
  • Firebase의 데이터를 받아온 이후 클라이언트에 어떤 식으로 구현했나요?
  • 협업 툴은 어떤 것을 사용했나요?